/*************************************************************************
> File Name: set.cpp
> Author: hzy
> Created Time: 2023-08-19 09:53:27
> Description:
************************************************************************/
#include <iostream>
#include <set>

using namespace std;

void set_test()
{
    int arr[] = {1, 2, 3, 4, 5, 6, 7, 8};
    set<int> myset(arr, arr + 8);

    // 查找键key的元素个数:count(key)
    // cout << myset.count(1) << endl;

    for (set<int>::iterator it = myset.begin(); it != myset.end(); it++)
    {
        cout << *it << " ";
    }
    cout << endl;

    // 在容器末尾插入元素
    myset.insert(66);

    // 删除容器中值为elem的元素:erase(elem)
    myset.erase(8);

    for (set<int>::iterator it = myset.begin(); it != myset.end(); it++)
    {
        cout << *it << " ";
    }
    cout << endl;

    cout << *myset.lower_bound(2) << endl; // 返回第一个key>=keyElem元素的迭代器。
    cout << *myset.upper_bound(2) << endl; // 返回第一个key>keyElem元素的迭代器。
}

int main()
{
    set_test();

    return 0;
}